## Бины

Представьте, что мы хотим на странице приветствия выводить разный контент в зависимости от времени суток: днем — один, ночью — другой.

### Полезные ссылки

* Класс [LocalDateTime](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/LocalDateTime.html) – класс, представляющий дату и время
* Аннотация [@Component](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/stereotype/Component.html) – отмечает класс, как компонент

### src/main/java/exercise/Application.java

Используйте необходимые аннотации и сконфигурируйте приложение так, чтобы в контекст добавлялся только определенный бин  в зависимости от времени суток:

* С 6 часов до 22 часов включительно — бин класса `Day`
* С 22 часов до 6 часов включительно — бин класса `Night`

Подумайте, какой должна быть область видимости бина.

### src/main/java/exercise/controller/WelcomeController.java

Внедрите бин типа `Daytime` в контроллер. Реализуйте в контроллере обработчик, который будет обрабатывать GET-запросы на адрес */welcome*  и выводить приветствие в зависимости от текущего времени. Приветствие должно иметь вид *It is night now! Welcome to Spring!*

Для получения текущего времени суток используйте метод `getName()` у объекта типа `Daytime`, который мы внедрили. Запустите приложение и убедитесь, что выводится верное приветствие.

### src/main/java/exercise/daytime/Day.java и Night.java

Проследите процесс создания бинов. Добавьте в классы метод, который будет выполняться после внедрения бина. В методе выведите сообщение, что бин был создан. Запустите приложение и проследите в логах, как создаются бины.

### Подсказки

* Для определения текущего времени можно воспользоваться классом `LocalDateTime` — изучите методы этого класса и найдите подходящие
* Если мы создаем бин с помощью метода, то аннотацией области видимости бина нужно отметить этот метод
